package com.mhkj.base.rbac.user.service;

import java.util.List;

import com.mhkj.base.rbac.role.entity.SystemRole;
import com.mhkj.base.rbac.user.entity.SystemUser;
import com.mics.core.common.componet.Pagination;
import com.mics.core.system.base.service.BaseService;

/**
 * 系统用户
 * @author mics
 * @date 2018年9月1日
 * @version 1.0
 */
public interface SystemUserService extends BaseService<SystemUser>{

	/**
	 * 分页查询
	 * 
	 * @author mics
	 * @date 2018年9月1日
	 * @version 1.0
	 */
	Pagination<SystemUser> listByPage(SystemUser systemUser, int pageIndex,
			int pageSize);

	
	/**
	 * 增加用户
	 * 
	 * @author mics
	 * @date 2018年9月2日
	 * @version 1.0
	 */
	void save(SystemRole systemRole, String userIds);

	/**
	 * 修改用户角色
	 * 
	 * @author mics
	 * @date 2018年9月2日
	 * @version 1.0
	 */
	void edit(SystemUser systemUser, String roleIds);


	/**
	 * 根据oaid查询用户 
	 * @author mics
	 * @date 2018年9月2日
	 * @version 1.0
	 */
	SystemUser getByOaId(String oaId);
	
	
	/**
	 * 根据姓名查询用户角色
	 * @author mics
	 * @date 2018年9月2日
	 * @version 1.0
	 */
	List<Object[]> getUserRole(String name);

	/**
	 * 根据用户姓名查询用户
	 * @author mics
	 * @date 2018年9月2日
	 * @version 1.0
	 * @param name 
	 */
	SystemUser getByName(String name);
	
	/**
	 * 根据OA登陆用户名查询用户
	 * @author mics
	 * @date 2018年9月6日
	 * @version 1.0
	 */
	SystemUser getByLoginName(String loginName);

}
